#ifndef __LIB_AGORA_ADMIN_IUSER_H__
#define __LIB_AGORA_ADMIN_IUSER_H__

#include <string>
//#include "IChannel.h"
#include "IChannelRight.h"
#include "IServerRight.h"

class	IUser
{
public:
	virtual const unsigned int	GetId() const = 0;
	//virtual const unsigned int	SetId(unsigned int id) = 0;
	virtual const std::string&	GetLogin() const = 0;
	virtual const unsigned int	SetLogin(const std::string&) = 0;
	virtual const std::string&	GetPassword() const = 0;
	virtual const unsigned int	SetPassword(const std::string&) = 0;
	virtual IServerRight*		GetServerRight() const = 0;

	//virtual IChannel*						GetCurrentChannel() const = 0;
	//virtual const unsigned int					SetCurrentChannel(IChannel*) const = 0;
	virtual const unsigned int	SetNoCurrentChannel(void) = 0;
	//virtual const std::vector<IChannel*>	GetChannel() const = 0;
	//virtual const unsigned int					SubscribeChannel(IChannel*, const IRight&) const = 0;
};

#endif